/**
 * 初始化
 */
$(function() {
	$(".page_selector").sSelect();
	$('.dd_nav2 p a').click(function() {
		$(this).toggleClass('current');
		$(this).siblings().removeClass('current');
	});
	
	// 业务员业绩报表
	sys.daterangepicker({
		id : 'searchSalesmanDate',
		maxDate : '2199-12-31',
		type : 'date'
	});

	if ($("#beginDate").val() && $("#endDate").val()) {
		var beginDate = $("#beginDate").val();
		var endDate = $("#endDate").val();
		$('#searchSalesmanDate').data('daterangepicker').setStartDate(beginDate);
		$('#searchSalesmanDate').data('daterangepicker').setEndDate(endDate);
		// 初始化
		doLoadSalesmanAchievements($("#chartType").val());
	} else {
		// 初始化
		doLoadSalesmanAchievements($("#chartType").val());
	}

	// 部门业绩
	sys.daterangepicker({
		id : 'searchOrgDate',
		maxDate : '2199-12-31',
		type : 'date'
	});

	if ($("#beginDate").val() && $("#endDate").val()) {
		var beginDate = $("#beginDate").val();
		var endDate = $("#endDate").val();
		$('#searchOrgDate').data('daterangepicker').setStartDate(beginDate);
		$('#searchOrgDate').data('daterangepicker').setEndDate(endDate);
		// 初始化
		doLoadOrgSalesData();
	} else {
		// 初始化
		doLoadOrgSalesData();
	}
});

/**
 * 初始化业务员业绩
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月3日 下午4:10:02
 */
function doLoadSalesmanAchievements(chartType) {
	var searchSalesmanDate = $("#searchSalesmanDate").val();
	var beginDate = null;
	var endDate = null;
	if (searchSalesmanDate && searchSalesmanDate.indexOf(' - ') > 0) {
		beginDate = searchSalesmanDate.split(' - ')[0];
		endDate = searchSalesmanDate.split(' - ')[1];
	}
	// 定义查询回调函数（查询参数在此设置）
	var params = {
		orderBy : chartType,
		orgId : $("#orgId").val(),
		beginDate : beginDate,
		endDate : endDate
	};
	if ('orderCount' == chartType) {
		// 订单数量
		$.ajax({
			type : 'post',
			url : rootPath + '/report/getSalesmanAchievementsData',
			dataType : 'json',
			async : false,
			data : params,
			success : function(data) {
				if (data) {
					initChartSalesmanAchievementsCount(data);
					initSalesmanAchievementsTable(data);
				}
			}
		});
	} else {
		// 订单金额
		$.ajax({
			type : 'post',
			url : rootPath + '/report/getSalesmanAchievementsData',
			dataType : 'json',
			async : false,
			data : params,
			success : function(data) {
				if (data) {
					initChartSalesmanAchievementsMoney(data);
					initSalesmanAchievementsTable(data);
				}
			}
		});
	}
}

/**
 * 初始化部门业绩
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月3日 下午4:10:02
 */
function doLoadOrgSalesData() {
	var searchOrgDate = $("#searchOrgDate").val();
	var beginDate = null;
	var endDate = null;
	if (searchOrgDate && searchOrgDate.indexOf(' - ') > 0) {
		beginDate = searchOrgDate.split(' - ')[0];
		endDate = searchOrgDate.split(' - ')[1];
	}
	// 定义查询回调函数（查询参数在此设置）
	var params = {
		beginDate : beginDate,
		endDate : endDate
	};
	$.ajax({
		type : 'post',
		url : rootPath + '/report/getOrgSalesData',
		dataType : 'json',
		async : false,
		data : params,
		success : function(data) {
			if (data) {
				initChartOrgSales(data);
				initOrgSalesTable(data);
			}
		}
	});
}

/**
 * 初始化部门业绩 扇形图
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月5日 下午5:01:23
 * @param data
 */
function initChartOrgSales(data) {
	var arrayObj = new Array();
	var xAxisData = new Array();
	for (var i = 0; i < data.length; i++) {
		xAxisData[i] = data[i].orgName;
		arrayObj.push({
			value : data[i].totalAmount,
			name : data[i].orgName
		});
	}
	option = {
		tooltip : {
			trigger : 'item',
			formatter : "{a}  ({d}%)<br/>{b} : {c}"
		},
		legend : {
			orient : 'vertical',
			x : 'left',
			data : xAxisData
		},
		calculable : true,
		series : [ {
			name : '销售比例',
			type : 'pie',
			radius : [ '45%', '80%' ],
			itemStyle : {
				normal : {
					label : {
						show : false
					},
					labelLine : {
						show : false
					}
				},
				emphasis : {
					label : {
						show : true,
						position : 'center',
						textStyle : {
							fontSize : '30',
							fontWeight : 'bold'
						}
					}
				}
			},
			data : arrayObj
		} ]
	};
	var myChart = echarts.init(document.getElementById('orgSalesDiv'));
	// 使用刚指定的配置项和数据显示图表。
	myChart.setOption(option, true);
}

/**
 * 初始化业务员图表-订单数量
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月5日 下午3:38:21
 * @param data
 */
function initChartSalesmanAchievementsCount(data) {
	// $("#firstChartDiv").html('<div id="salesmanAchievementsCountDiv"
	// style="width: 100%;height: 400px; margin: 0 auto;"></div>');
	$("#salesmanAchievementsMoneyDiv").hide();
	$("#salesmanAchievementsCountDiv").show();

	var xAxisData = new Array();
	var seriesOrderCount = new Array();

	for (var i = 0; i < data.length; i++) {
		xAxisData[i] = data[i].userName;
		seriesOrderCount[i] = data[i].orderCount;
	}

	var myChart = echarts.init(document.getElementById('salesmanAchievementsCountDiv'));
	var option = {
		tooltip : {
			trigger : 'axis'
		},
		calculable : true,
		legend : {
			data : [ '订单数量' ]
		},
		xAxis : {
			axisLabel : {
				show : true,
				interval : 'auto', // {number}
				rotate : 45,
				margin : 8
			// formatter: '{value}月',
			},
			data : xAxisData
		},
		// y轴（可多个）
		yAxis : [ {
			type : 'value',
			name : '订单数量',
			axisLine : { // 轴线
				show : true,
				lineStyle : {
					type : 'solid',
					width : 1
				}
			},
			axisLabel : { // 显示值
				formatter : '{value} 条',
				textStyle : {
					//color : '#C23531',
					fontStyle : 'normal'
				}
			}
		} ],
		series : [ {
			name : '订单数量',
			type : 'bar',
			yAxisIndex : 0,
			itemStyle : {
				normal : {
					color : '#C23531'
				}
			},
			data : seriesOrderCount
		} ]
	};
	// 使用刚指定的配置项和数据显示图表。
	myChart.setOption(option, true);
}

/**
 * 初始化业务员图表-订单金额
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月5日 下午3:38:21
 * @param data
 */
function initChartSalesmanAchievementsMoney(data) {
	// $("#firstChartDiv").html('<div id="salesmanAchievementsMoneyDiv"
	// style="width: 100%;height: 400px; margin: 0 auto;"></div>');
	$("#salesmanAchievementsCountDiv").hide();
	$("#salesmanAchievementsMoneyDiv").show();

	var xAxisData = new Array();
	var seriesOrderAmount = new Array();

	for (var i = 0; i < data.length; i++) {
		xAxisData[i] = data[i].userName;
		seriesOrderAmount[i] = data[i].totalAmount;
	}

	var myChart = echarts.init(document.getElementById('salesmanAchievementsMoneyDiv'));
	var option = {
		tooltip : {
			trigger : 'axis'
		},
		calculable : true,
		legend : {
			data : [ '订单金额' ]
		},
		xAxis : {
			axisLabel : {
				show : true,
				interval : 'auto', // {number}
				rotate : 45,
				margin : 8
			// formatter: '{value}月',
			},
			data : xAxisData
		},
		// y轴（可多个）
		yAxis : [ {
			type : 'value',
			name : '订单金额',
			axisLine : { // 轴线
				show : true,
				lineStyle : {
					// color : '#C23531',
					type : 'solid',
					width : 1
				}
			},
			axisLabel : { // 显示值
				formatter : '{value} 元',
				textStyle : {
					//color : '#C23531',
					fontStyle : 'normal'
				}
			},
			splitLine : {
				show : false
			// 图表内标识线不展示
			}
		} ],
		series : [ {
			name : '订单金额',
			type : 'line',
			symbolSize : 6,
			itemStyle : {
				normal : {
					// color : '#C23531',
					borderWidth : 1
				}
			},
			data : seriesOrderAmount
		} ]
	};
	// 使用刚指定的配置项和数据显示图表。
	myChart.setOption(option, true);
}

/**
 * 初始化业务员业绩表格
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月5日 下午3:38:06
 * @param data
 */
function initSalesmanAchievementsTable(data) {
	$("#salesmanAchievementsTable").html('');
	// 定义列
	var columns = [ {
		title : '排名',
		align : 'center',
		valign : 'middle',
		formatter : function(value, row, index) {
			if (index == 0) {
				return '<img src="' + rootPath + '/statics/images/no_1.png" width="20px" height="20px">';
			} else if (index == 1) {
				return '<img src="' + rootPath + '/statics/images/no_2.png" width="20px" height="20px">';
			} else if (index == 2) {
				return '<img src="' + rootPath + '/statics/images/no_3.png" width="20px" height="20px">';
			} else {
				return '<font style="color:gray;font-weight:bold;font-size:16px;">' + (index + 1) + '</font>';
			}
		}
	}, {
		field : 'userName',
		title : '姓名',
		valign : 'middle',
		align : 'center'
	}, {
		field : 'orderCount',
		title : '订单数',
		valign : 'middle',
		align : 'right'
	}, {
		field : 'totalAmount',
		title : '订单金额',
		align : 'right',
		valign : 'middle'
	} ];
	sys.initTable('salesmanAchievementsTable', {
		data : data,
		columns : columns,
		pagination : false,
		striped : true,
		clickToSelect : true
	});
}

/**
 * 初始化部门业绩表格
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2018年1月5日 下午3:38:06
 * @param data
 */
function initOrgSalesTable(data) {
	// 定义列
	var columns = [ {
		title : '排名',
		align : 'center',
		valign : 'middle',
		formatter : function(value, row, index) {
			if (index == 0) {
				return '<img src="' + rootPath + '/statics/images/no_1.png" width="20px" height="20px">';
			} else if (index == 1) {
				return '<img src="' + rootPath + '/statics/images/no_2.png" width="20px" height="20px">';
			} else if (index == 2) {
				return '<img src="' + rootPath + '/statics/images/no_3.png" width="20px" height="20px">';
			} else {
				return '<font style="color:gray;font-weight:bold;font-size:16px;">' + (index + 1) + '</font>';
			}
		}
	}, {
		field : 'orgName',
		title : '销售组',
		valign : 'middle',
		align : 'center'
	}, {
		field : 'totalAmount',
		title : '订单金额',
		align : 'right',
		valign : 'middle'
	} ];
	sys.initTable('orgSalesTable', {
		data : data,
		columns : columns,
		pagination : false,
		striped : true,
		clickToSelect : true
	});
}
